package com.etalk.crm.dao;

import com.etalk.crm.pojo.ActivityInfo;
import com.etalk.crm.pojo.KcPackage;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @Author Terwer
 * @Date 2018/11/8 14:02
 * @Version 1.0
 * @Description 活动
 **/
@Mapper
public interface ActivityInfoMapper {
    /**
     * 获取活动列表
     *
     * @param search
     * @return
     */
    List<Map> getActivityList(@Param("search") String search);
    
    /*
     * @Author James
     * @Description 查询 活动列表
     * @Date 14:57 2019/2/26
     * @Param 
     * @return 
     **/
    List<ActivityInfo> activityInfoList(@Param("state")String state, @Param("searchKey")String searchKey);

    /*
     * @Author James
     * @Description 删除 活动
     * @Date 14:58 2019/2/26
     * @Param
     * @return
     **/
    int delActivityInfo(@Param("id") int id);

     /*
     * @Author James
     * @Description 添加 活动
     * @Date 14:58 2019/2/26
     * @Param
     * @return
     **/
    int addActivityInfo(ActivityInfo activityInfo);

     /*
     * @Author James
     * @Description 更新 活动
     * @Date 14:58 2019/2/26
     * @Param
     * @return
     **/
    int updateActivityInfo(ActivityInfo activityInfo);

    /**
     * 查询 活动信息
     * @param id
     * @return
     */
    ActivityInfo selectById (@Param("id") int id);

    /*
     * @Author James
     * @Description 促销 demo套餐列表
     * @Date 18:39 2019/2/26
     * @Param
     * @return
     **/
    List<KcPackage> selectPackage();
    /*
     * @Author James
     * @Description 运营活动列表
     * @Date 18:39 2019/2/26
     * @Param
     * @return
     **/
    List<ActivityInfo> promotionList();
    
    
    /*
     * @Author James
     * @Description 活动列表
     * @Date 11:49 2019/2/28
     * @Param 
     * @return 
     **/
    List<ActivityInfo> promotionForPage(@Param("state")String state, @Param("searchKey")String searchKey);


    /*
     * @Author James
     * @Description 删除 Promotion
     * @Date 15:25 2019/2/28
     * @Param
     * @return
     **/
    int delPromotion(@Param("id") int id);

    /*
     * @Author James
     * @Description 添加Promotion
     * @Date 15:25 2019/2/28
     * @Param
     * @return
     **/
    int addPromotion(ActivityInfo activityInfo);

    /*
     * @Author James
     * @Description 更新Promotion
     * @Date 15:27 2019/2/28
     * @Param
     * @return
     **/
    int updatePromotion(ActivityInfo activityInfo);
}
